<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<c:set var="contextPath" value="<%=request.getContextPath()%>"></c:set>
<!DOCTYPE html>
<html lang="en">
<head>

</head>

<body class="no-skin">


	<!-- /section:basics/sidebar -->
	<div class="main-content">
		<!-- #section:basics/content.breadcrumbs -->
		<div class="breadcrumbs" id="breadcrumbs">
			<script type="text/javascript">
					try {
						ace.settings.check('breadcrumbs', 'fixed')
					} catch (e) {
					}
				</script>

			<ul class="breadcrumb">
				<li><i class="ace-icon fa fa-home home-icon"></i> <a href="#">Home</a>
				</li>

				<li><a href="#">Tables</a></li>
				<li class="active">Simple &amp; Dynamic</li>
			</ul>
			<!-- /.breadcrumb -->

			<!-- #section:basics/content.searchbox -->
			<div class="nav-search" id="nav-search">
				<form class="form-search">
					<span class="input-icon"> <input type="text"
						placeholder="Search ..." class="nav-search-input"
						id="nav-search-input" autocomplete="off" /> <i
						class="ace-icon fa fa-search nav-search-icon"></i>
					</span>
				</form>
			</div>
			<!-- /.nav-search -->

			<!-- /section:basics/content.searchbox -->
		</div>

		<!-- /section:basics/content.breadcrumbs -->
		<div class="page-content">
			<!-- #section:settings.box -->
			<div class="ace-settings-container" id="ace-settings-container">
				<div class="btn btn-app btn-xs btn-warning ace-settings-btn"
					id="ace-settings-btn">
					<i class="ace-icon fa fa-cog bigger-150"></i>
				</div>

				<div class="ace-settings-box clearfix" id="ace-settings-box">
					<div class="pull-left width-50">
						<!-- #section:settings.skins -->
						<div class="ace-settings-item">
							<div class="pull-left">
								<select id="skin-colorpicker" class="hide">
									<option data-skin="no-skin" value="#438EB9">#438EB9</option>
									<option data-skin="skin-1" value="#222A2D">#222A2D</option>
									<option data-skin="skin-2" value="#C6487E">#C6487E</option>
									<option data-skin="skin-3" value="#D0D0D0">#D0D0D0</option>
								</select>
							</div>
							<span>&nbsp; Choose Skin</span>
						</div>

						<!-- /section:settings.skins -->

						<!-- #section:settings.navbar -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-navbar" /> <label class="lbl"
								for="ace-settings-navbar"> Fixed Navbar</label>
						</div>

						<!-- /section:settings.navbar -->

						<!-- #section:settings.sidebar -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-sidebar" /> <label class="lbl"
								for="ace-settings-sidebar"> Fixed Sidebar</label>
						</div>

						<!-- /section:settings.sidebar -->

						<!-- #section:settings.breadcrumbs -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-breadcrumbs" /> <label class="lbl"
								for="ace-settings-breadcrumbs"> Fixed Breadcrumbs</label>
						</div>

						<!-- /section:settings.breadcrumbs -->

						<!-- #section:settings.rtl -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-rtl" /> <label class="lbl"
								for="ace-settings-rtl"> Right To Left (rtl)</label>
						</div>

						<!-- /section:settings.rtl -->

						<!-- #section:settings.container -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-add-container" /> <label class="lbl"
								for="ace-settings-add-container"> Inside <b>.container</b>
							</label>
						</div>

						<!-- /section:settings.container -->
					</div>
					<!-- /.pull-left -->

					<div class="pull-left width-50">
						<!-- #section:basics/sidebar.options -->
						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-hover" /> <label class="lbl"
								for="ace-settings-hover"> Submenu on Hover</label>
						</div>

						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-compact" /> <label class="lbl"
								for="ace-settings-compact"> Compact Sidebar</label>
						</div>

						<div class="ace-settings-item">
							<input type="checkbox" class="ace ace-checkbox-2"
								id="ace-settings-highlight" /> <label class="lbl"
								for="ace-settings-highlight"> Alt. Active Item</label>
						</div>

						<!-- /section:basics/sidebar.options -->
					</div>
					<!-- /.pull-left -->
				</div>
				<!-- /.ace-settings-box -->
			</div>
			<!-- /.ace-settings-container -->

			<!-- /section:settings.box -->
			<div class="page-content-area">
				<div class="page-header">
					<h1>
						Tables <small> <i
							class="ace-icon fa fa-angle-double-right"></i> Static &amp;
							Dynamic Tables
						</small>
					</h1>
				</div>
				<!-- /.page-header -->

				<div class="row">
					<div class="col-xs-12">
						<!-- PAGE CONTENT BEGINS -->
						<div class="row">
							<div class="col-xs-12">
							
								<!-- 增加学生信息 -->
						
						<button id="addStudentBtn" class="btn btn-primary" >
								<i class="ace-icon fa fa-plus align-top bigger-125"></i>
								添加科目信息
						</button>
							
								<table id="sample-table-1"
									class="table table-striped table-bordered table-hover">
									<thead>
										<tr>
											<th>科目编号</th>
											<th>科目名</th>
											<th>科目描述</th>
											<th>科目题数</th>
											<th>总时长</th>
											<th>满分总分</th>
											<th>是否开启考试</th>
											<th>操作</th>

										</tr>
									</thead>

									<tbody>
									<c:forEach items="${examSubjectList }" var="sub">
										<tr>
											<td>${sub.subId }</td>
											<td>${sub.name }</td>
											<td>${sub.description }</td>
											<td>${sub.testCount }</td>
											<td>${sub.totalTime }</td>
											<td>${sub.totalScore }</td>
											<td>
												<c:choose>
													<c:when test="${sub.status==0 }">
														<input name="switch-field-1" subid="${sub.subId }" class="ace ace-switch ace-switch-6 subject-status" type="checkbox">
														<span class="lbl"></span>
 													</c:when>
 													<c:otherwise>
 														<input name="switch-field-1" subid="${sub.subId }"checked class="ace ace-switch ace-switch-6 subject-status" type="checkbox">
 														<span class="lbl"></span> 
 													</c:otherwise>
												</c:choose>
											</td>
											
											<td><a title="修改科目" class="btn btn-primary btn-xs edit-subject-btn"><i class="ace-icon fa fa-pencil"></i></a>
											    <a title="删除科目" class="btn btn-primary btn-xs del-subject-btn"><i class="ace-icon fa fa-trash-o"></i></a>
												<a title="管理科目学生" class="btn btn-primary btn-xs manage-subject-student-btn"><i class="ace-icon fa fa-users"></i></a>
											</td>

										</tr>
									</c:forEach>
									</tbody>
								</table>
							</div>
							<!-- /.span -->
						</div>
						<!-- /.row -->

						<div class="hr hr-18 dotted hr-double"></div>


						<!-- <div class="table-responsive"> -->



						<!--[if !IE]> -->
						<script type="text/javascript">
								window.jQuery
										|| document
												.write("<script src='${pageContext.request.contextPath }/static/assets/js/jquery.min.js'>"
														+ "<"+"/script>");
							</script>

						<!-- <![endif]-->

						<!--[if IE]>
<script type="text/javascript">
 window.jQuery || document.write("<script src='../assets/js/jquery1x.min.js'>"+"<"+"/script>");
</script>
<![endif]-->
						<script type="text/javascript">
							
							
								if ('ontouchstart' in document.documentElement)
									document
											.write("<script src='${pageContext.request.contextPath }/static/assets/js/jquery.mobile.custom.min.js'>"
													+ "<"+"/script>");
							</script>
						<script
							src="${pageContext.request.contextPath }/static/assets/js/bootstrap.min.js"></script>

						<!-- page specific plugin scripts -->
						<script
							src="${pageContext.request.contextPath }/static/assets/js/jquery.dataTables.min.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/assets/js/jquery.dataTables.bootstrap.js"></script>

						<!-- ace scripts -->
						<script
							src="${pageContext.request.contextPath }/static/assets/js/ace-elements.min.js"></script>


						<!-- inline scripts related to this page -->
						<script type="text/javascript">
								jQuery(function($) {
									var oTable1 = $('#sample-table-2')
									//.wrap("<div class='dataTables_borderWrap' />")   //if you are applying horizontal scrolling (sScrollX)
									.dataTable({
										bAutoWidth : false,
										"aoColumns" : [ {
											"bSortable" : false
										}, null, null, null, null, null, {
											"bSortable" : false
										} ],
										"aaSorting" : [],

									});
								

									$(document)
											.on(
													'click',
													'th input:checkbox',
													function() {
														var that = this;
														$(this)
																.closest(
																		'table')
																.find(
																		'tr > td:first-child input:checkbox')
																.each(
																		function() {
																			this.checked = that.checked;
																			$(
																					this)
																					.closest(
																							'tr')
																					.toggleClass(
																							'selected');
																		});
													});

									$('[data-rel="tooltip"]').tooltip({
										placement : tooltip_placement
									});
									function tooltip_placement(context, source) {
										var $source = $(source);
										var $parent = $source.closest('table')
										var off1 = $parent.offset();
										var w1 = $parent.width();

										var off2 = $source.offset();
										//var w2 = $source.width();

										if (parseInt(off2.left) < parseInt(off1.left)
												+ parseInt(w1 / 2))
											return 'right';
										return 'left';
									}

								})
							</script>

						<!-- the following scripts are used in demo only for onpage help and you don't need them -->
						<link rel="stylesheet"
							href="${pageContext.request.contextPath }/static/assets/css/ace.onpage-help.css" />
						<link rel="stylesheet"
							href="${pageContext.request.contextPath }/static/docs/assets/js/themes/sunburst.css" />

						<script type="text/javascript">
								ace.vars['base'] = '${pageContext.request.contextPath }/static';
							</script>
						<script
							src="${pageContext.request.contextPath }/static/assets/js/ace/elements.onpage-help.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/assets/js/ace/ace.onpage-help.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/docs/assets/js/rainbow.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/docs/assets/js/language/generic.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/docs/assets/js/language/html.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/docs/assets/js/language/css.js"></script>
						<script
							src="${pageContext.request.contextPath }/static/docs/assets/js/language/javascript.js"></script>

<!-- 管理学生科目-模态框 -->
<div class="modal fade" id="subjectStudentModal" tabindex="-1"
							role="dialog" aria-labelledby="subjectStudentModallabel"
							aria-hidden="true">
							<div class="modal-dialog">
								<div class="modal-content">
									<div class="modal-header">
										<button type="button" class="close" data-dismiss="modal"
											aria-hidden="true">&times;</button>
										<h4 class="modal-title" id="subjectStudentModalLabel">
										管理学生科目：<label id="modalSubjectName"></label>
										</h4>
									</div>
									<div class="modal-body">
										<input type="hidden" id="subjectId"/>
										<div id="subjectStudentContent" class="control-group">
										</div>
									</div>
									<div class="modal-footer">
										<button type="button" class="btn btn-default"
											data-dismiss="modal">关闭</button>
										<button id="subjectStudentSaveBtn" type="button" class="btn btn-primary">保存
										</button>
									</div>
								</div>
							</div>
						</div>




			<!-- 添加试题  -  模态框 -->
						<div class="modal fade" id="addTestModal" tabindex="-1"
							role="dialog" aria-labelledby="addTestModalLabel"
							aria-hidden="true">
							<div class="modal-dialog">
								<div class="modal-content">
									<div class="modal-header">
										<button type="button" class="close" data-dismiss="modal"
											aria-hidden="true">&times;</button>
										<h4 class="modal-title" id="addTestModalLabel">添加科目</h4>
									</div>
									<div class="modal-body">
										<form id="addTestForm" method="post">
											<p>
												<label>科目编号:</label><input type="text" name="subId"
													placeholder="填写科目编号" />
											</p>
											<p>
												<label>科目名称:</label><input type="text" name="name"
													placeholder="填写科目名称" />
											</p>
											<p>
												<label>科目描述:</label><input type="text" name="description"
													placeholder="填写科目描述" />
											</p>
											<p>
												<label>科目题数:</label><input type="text" name="testCount"
													placeholder="填写科目题数" />
											</p>
											<p>
												<label>总时长:</label><input type="text" name="totalTime"
													placeholder="填写总时长" />
											</p>
											
											<p>
												<label>满分总分:</label><input type="text" name="totalScore"
													placeholder="填写满分总分" />
											</p>
											<p>
												<label>是否开启考试</label> <span class="answerTotal"> 
												<input id="status" name="stauts" subid="${sub.subId }"checked class="ace ace-switch ace-switch-6 subject-status" type="checkbox">
 														<span class="lbl"></span>
												</span>
											</p>
										</form>
									</div>
									<div class="modal-footer">
										<button type="button" class="btn btn-default"
											data-dismiss="modal">关闭</button>
										<button type="submit" class="btn btn-primary"
											id="addTestSaveBtn">添加</button>
									</div>
								</div>
							</div>
						</div>



<!-- 修改科目  -  模态框 -->
<div class="modal fade" id="editTestModal" tabindex="-1" role="dialog"
			aria-labelledby="editTestModalLabel" aria-hidden="true">
			<div class="modal-dialog">
				<div class="modal-content">
					<div class="modal-header">
						<button type="button" class="close" data-dismiss="modal"
							aria-hidden="true">&times;</button>
						<h4 class="modal-title" id="editTestModalLabel">修改科目</h4>
					</div>
					<div class="modal-body">
						<form id="editTestForm" method="POST">
							<p>
												<label>科目编号:</label><input type="text" name="subId" id="subId"/>
											</p>
											<p>
												<label>科目名称:</label><input type="text" name="name" id="name" />
											</p>
											<p>
												<label>科目描述:</label><input type="text" name="description" id="description" />
											</p>
											<p>
												<label>科目题数:</label><input type="text" name="testCount" id="testCount"/>
											</p>
											<p>
												<label>总时长:</label><input type="text" name="totalTime" id="totalTime"/>
											</p>
											
											<p>
												<label>满分总分:</label><input type="text" name="totalScore" id="totalScore"/>
											</p>
											<p>
												<label>是否开启考试</label> <span class="answerTotal"> 
												<input id="status" name="stauts"   subid="${sub.subId }"  class="ace ace-switch ace-switch-6 subject-status" type="checkbox">
 														<span class="lbl"></span>
												</span>
											</p>
						</form>
					</div>
					<div class="modal-footer">
						<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
						<button type="button" class="btn btn-primary" id="editTestBtn">修改</button>
					</div>
				</div>
			</div>
		</div>


</div>
</div>
</div>
</div>
</div>




<!-- 管理科目学生 -->
<script type="text/javascript">
//点击管理学生科目按钮时，读取所有学生姓名和学号
$('.manage-subject-student-btn').click(function(){
	//获取当前选择行的科目
	//var subId=$(this).parents("td").siblings("td").eq(0).test();
	var subId=$(this).parent().siblings().eq(0).text();
	$.ajax({
		type:'POST',
		url:'${contextPath}/teacher/getAllStudent',
		data:{
			subjectId:subId
		},
		dataType:"json",
		success:function(data){
			var htmlString='';
			var selectedUser=data.selectedUser;
			//得到所有这个科目关联的学生
			for(var i=0;i<data.allUser.length;i++){
				var user=data.allUser[i];
				var checked='';
				
				for(var j=0;j<selectedUser.length;j++){
					if(selectedUser[j]==user.userId){
						checked='checked="true"';
					}
				}
				htmlString+='<div class="checkbox">';
				htmlString+='<label>';
				htmlString+='<input name="subjectStudents" class="ace ace-checkbox-2" type="checkbox" value="'
								+ user.userId + '"' + checked + '/>';
				htmlString+='<span class="lbl"> '+user.userName+'</span>';
				htmlString+='</lable>';
				htmlString+='</div>';
			}
			//把所有学生加入到弹出框subjectStudentModal 里面的内容区，即subjectStudentContent里面
			$('#subjectStudentContent').html(htmlString);
			$('#subjectId').val(subId);
		}
	});
	
	$('#modalSubjectName').text($(this).parents("td").siblings("td").eq(1).text());
	$('#subjectStudentModal').modal('show');
});


//修改学生的勾选后，点击保存按钮
$('#subjectStudentSaveBtn').on('click',function() {
	var subjectStudents=[];
	//获取所有当前已经勾选的学生的学号
	for(var i=0;i<$('input[name="subjectStudents"]:checked').length;i++){
		subjectStudents[i]=$($('input[name="subjectStudents"]:checked')[i]).val();
	}
	$.ajax({
		type:'POST',
		url:'${contextPath}/teacher/saveSubjectStudents',
		data:{
			subjectStudents:subjectStudents,//吧所有勾选上的学号已数组的形式传到后台
			subjectId:$('#subjectId').val()
		},
		dataType:"json",
		success:function(data){
			//判断成功是否
			//前台代码就这样
			if(data.success){
				alert('成功');
				$('#subjectStudentModal').modal('hide');
			}else{
				alert('失败');
			}
		}
});
});

</script>

<!-- 新增科目 -->
<script type="text/javascript">
/* 新增方法  */    	
$('#addStudentBtn').click(function() {
			$('#addTestModal').modal('show');
		});
		
		


//保存并添加试题
$('#addTestSaveBtn').click(function() {
			if ( $('#addTestForm').valid()){
				var subId = $('#addTestForm input[name="subId"]').val();
				var name = $('#addTestForm input[name="name"]').val();
				var description = $('#addTestForm input[name="description"]').val();
				var testCount = $('#addTestForm input[name="testCount"]').val();
				var totalTime = $('#addTestForm input[name="totalTime"]').val();
				var totalScore = $('#addTestForm input[name="totalScore"]').val();
				var status=0;
				var array = $('#addTestForm #status').prop('checked');
				if(array){
					status=1;
				}
				 
				$.ajax({
							type : 'POST',
							url : '${pageContext.request.contextPath }/teacher/saveSubject',
							data : {
								subId : subId,
								name : name,
								description : description,
								testCount : testCount,
								totalTime : totalTime,
								totalScore : totalScore,
								status : status
							},
							dataType : "json",
							success : function(data) {
								if (data.success) {
									alert('添加成功!');
									window.location.reload();
								} else {
									var messageMap = data.messageMap;
									alert('添加失败!');
									for ( var key in messageMap) {
										var value = messageMap[key];
										$(
												'#addTestForm input[name ="'
														+ key
														+ '"]')
												.after(
														'<label class="jsr303-message-label">'
																+ value
																+ '</label>');
									}
								}
							}
						});
			}
		});
	
</script>


<script type="text/javascript">
//修改科目
var testId = 0;
$('.edit-subject-btn').click(function() {
	subId = $(this).parent().siblings().eq(0).text();
	
	$.ajax({
		type: 'POST',
		url: '${pageContext.request.contextPath }/teacher/getSubjectById',
		data: {
			subId: subId
		},
		dataType: "json",
		success: function(data) {
			$('#editTestForm #subId').val(data.subId);
			$('#editTestForm #name').val(data.name);
			$('#editTestForm #description').val(data.description);
			$('#editTestForm #testCount').val(data.testCount);
			$('#editTestForm #totalTime').val(data.totalTime);
			$('#editTestForm #totalScore').val(data.totalScore);
			 if(data.status==0){
				$('#editTestForm #status').prop('checked',false);
			}else if(data.status==1){
				$('#editTestForm #status').prop('checked',true);
			} 
		}
		
	});
	$('#editTestModal').modal('show');
});


//提交修改按钮
$("#editTestBtn").click(function() {
	if($("#editTestForm").valid()) {
		var subId = $('#editTestForm #subId').val();
		var name =$('#editTestForm #name').val();
		var description =$('#editTestForm #description').val();
		var testCount =$('#editTestForm #testCount').val();
		var totalTime =$('#editTestForm #totalTime').val();
		var totalScore =$('#editTestForm #totalScore').val();
		
		var array = $('#editTestForm  #status').prop('checked');
		if(array){
			 var status=1;
		}else{
			status=0;
		}
						
		$.ajax({
			type: "POST",
			url: "${pageContext.request.contextPath }/teacher/updateSubject",
			data: {
				subId : subId,
				name : name,
				description : description,
				testCount : testCount,
				totalTime : totalTime,
				totalScore : totalScore,
				status : status
				
				},
			dataType: "json",
			success: function(data){
				if(data.success) {
					alert('修改成功');
					window.location.reload();
				} else {
					var messageMap = data.messageMap;
					for(var key in messageMap) {
						var value = messageMap[key];
						$('#addTestForm input[name ="'+ key+ '"]').after('<label class="jsr303-message-label">'
												+ value+ '</label>');
					}
					alert('修改失败');
				}
				}
			});
		}
	});
</script>

<script type="text/javascript">

//删除科目
$(".del-subject-btn").click(function() {
	if(confirm('确定删除?')==false){
		return false;
	}
	var subId = $(this).parent().siblings().eq(0).text();
	$.ajax({
		type: 'POST',
		url: "${pageContext.request.contextPath }/teacher/deleteSubject",
		data: {
			subId : subId
			},
		success: function(data) {
			if(data) {
				alert('删除成功');
				window.location.reload();
			} else {
				alert('删除失败');
				window.location.reload();
			}
		}
	});
});
</script>

</body>
</html>
